package cn.green.core.annos.column;


import cn.green.core.common.enums.field.ColumnType;

import java.lang.annotation.ElementType;
import java.lang.annotation.Retention;
import java.lang.annotation.RetentionPolicy;
import java.lang.annotation.Target;

/**
 * 标注在实体类的属性上，表示属性是表的一个字段
 */
@Target(ElementType.FIELD)
@Retention(RetentionPolicy.RUNTIME)
public @interface QColumn {
    //字段名称
    String name();
    String oldName() default "";
    //展示属性名称
    String viewFieldName() default "";
    //展示字段名称后缀
//    @Deprecated
//    String viewColumnSuf() default "";
    //别名
    String alias();
    //字段属性类型
    String fieldType() default "ORM_COLUMN_TYPE";
    //字段类型
    ColumnType columnType() default ColumnType.NONE;
    //字段配置
    String config() default "";
    //字段长度（整）
    int length() default 0;
    //小数点长度
    int digits() default 0;
}
